草庐IT

java - 在类路径中读取文件

全部标签

ruby - 如何找到安装 Ruby Gem 的路径(即 Gem.lib_path c.f. Gem.bin_path)

Gem.bin_path('cucumber','cucumber')将返回二进制文件/可执行文件的路径。似乎没有这样的函数来返回库路径。在这种情况下,理想情况下会返回:/home/hedge/.rvm/gems/ruby-1.9.2-p136@bbb-bdd-meta-bdd/gems/cucumber-0.10.0/lib我是否遗漏了什么或者是否有一种简单/单一的方法来获取此信息?更新:请不要提供CLI或非标准库建议。 最佳答案 已检查答案的问题是您必须“要求”rubygem否则它将无法工作。这通常是不受欢迎的,因为如果您正在使

ruby - 如何将值保存到 YAML 文件中?

这个问题在这里已经有了答案:Updatevalueofkeyofayamlfileinrubyonrails(1个回答)关闭9年前。在我的persist.yml文件中。我有以下键值对...session=0如何更新YAML文件,以便:session=2

ruby - 警告! PATH 没有设置好,一般是 shell 初始化文件引起的

每当我转到包含.rvmrc文件的文件夹时,都会出现警告:Warning!PATHisnotproperlysetup,'/home/me/.rvm/gems/ruby-2.0.0-p247/bin'isnotavailable,usuallythisiscausedbyshellinitializationfiles-checkthemfor'PATH=...'entries,tofixrun:'rvmuseruby-2.0.0-p247'.我做了rvmuseruby​​-2.0.0-p247,但警告仍然存在。注意:没有错误,我可以很好地运行我的应用程序,但警告非常烦人。有什么想法吗?

ruby - Ruby 中的标准文件命名约定

对于包含给定类SomeCoolClass的文件,正确的或标准的文件名是什么?1.somecoolclass.rb2.some_cool_class.rb3.some-cool-class.rb4.SomeCoolClass.rb还是其他一些变体?我注意到在Rubystdlib中,使用了版本1、2和3。 最佳答案 只有Ruby(即不是Rails),命名只是一种约定。在Railsconvention使用下划线是必要的(几乎)。我认为约定#2lowercase_and_underscore.rb更常见,看起来也不错,尽管有一篇文章Here

ruby - 无法正确自动生成 Ruby DevKit 配置文件

我已经使用WindowsRuby安装程序安装了Ruby2.0,将DevKit(DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe)解压到ProgramFiles并运行rubydk.rbinit但是生成的config.yml文件没有列出我的Ruby路径。其内容如下所示:#Thisconfigurationfilecontainstheabsolutepathlocationsofall#installedRubiestobeenhancedtoworkwiththeDevKit.Thisconfig#fileisgeneratedbythe'rub

ruby - 使用 Ruby 逐行读取、编辑和写入文本文件

有没有一种在Ruby中就地读取、编辑和写入文件的好方法?在我的在线搜索中,我发现了一些建议将其全部读入一个数组,修改所述数组,然后写出所有内容。我觉得应该有更好的解决方案,尤其是当我要处理一个非常大的文件时。类似于:myfile=File.open("path/to/file.txt","r+")myfile.eachdo|line|myfile.replace_puts('blah')ifline=~/myregex/endmyfile.closereplace_puts将覆盖当前行,而不是像当前那样(覆盖)写入下一行,因为指针位于行尾(分隔符之后)。因此,匹配/myregex/的每

ruby - Ruby 中的文件打开模式

我是Ruby的新程序员。有人可以举例说明在Ruby中使用r+,w+,a+模式打开文件吗?它们和r,w,a有什么区别?请解释,并举例说明。 最佳答案 文件打开模式并不是真正特定于ruby​​-它们是IEEEStd1003.1(SingleUNIXSpecification)的一部分。您可以在这里阅读更多相关信息:http://pubs.opengroup.org/onlinepubs/009695399/functions/fopen.htmlrorrbOpenfileforreading.worwbTruncatetozerolen

ruby - 项目目录的相对路径

在我的Ruby项目中,我使用了一些杂乱的东西,比如在几个远程盒子上移动和编辑文件,我真的需要一些东西,比如我的根项目目录的相对路径。我有许多用于许多方法的处理文件夹。现在我对路径进行了硬编码,但这让我很不高兴。 最佳答案 你可以用这个获取当前目录(当前文件的目录)File.dirname(__FILE__)然后你可以用到根的相对路径加入它File.join(File.dirname(__FILE__),'../../')#addpropernumberof..或者您可以使用expand_path将相对路径转换为绝对路径。ENV['B

Ruby 将 CSV 文件读取为 UTF-8 和/或将 ASCII-8Bit 编码转换为 UTF-8

我正在使用ruby1.9.2我正在尝试解析包含一些法语单词(例如spécifié)的CSV文件,并将内容放入MySQL数据库中。当我从CSV文件中读取行时,file_contents=CSV.read("csvfile.csv",col_sep:"$")返回的元素是ASCII-8BIT编码的字符串(spécifié变为sp\xE9cifi\xE9),然后像“spécifié”这样的字符串没有正确保存到我的MySQL数据库中。YehudaKatz表示ASCII-8BIT实际上是“二进制”数据,这意味着CSV不知道如何读取适当的编码。所以,如果我尝试让CSV强制编码如下:file_cont

ruby - 是否可以使用 Ruby 读取文件的修改日期?

是否可以使用Ruby读取文件的修改日期?我已经成功地打开了一个文本文件并捕获了文件的内容File.open("test.txt","r").eachdo|line|"但是读取文件的修改日期会非常有用。 最佳答案 使用mtime:File.mtime("testfile")=>2014-04-1316:00:23-0300 关于ruby-是否可以使用Ruby读取文件的修改日期?,我们在StackOverflow上找到一个类似的问题: https://stacko